package com.openlogic.logic.mapper.logic;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.mybatisflex.core.BaseMapper;
import com.openlogic.api.logic.entity.RuleModelDeploy;

/**
* @ClassName: RuleModelDeployMapper
* @Description: 规则模型Mapper接口
* @author weiyongpeng
* @date 2024年7月14日 上午9:40:36
 */
public interface RuleModelDeployMapper extends BaseMapper<RuleModelDeploy>{

	/**
	* 描述：查询规则模型列表
	* @Title: findRuleDeployList
	* @param model
	* @return
	* @author weiyongpeng
	* @date  2024年7月14日 上午9:40:51
	 */
	public List<RuleModelDeploy> selectRuleDeployList(Map<String, Object> params);

	/**
	* 描述：查询最大版本号根据规则key
	* @Title: getMaxVersionByKey
	* @param ruleModelKey
	* @return
	* @author weiyongpeng
	* @date  2024年7月16日 上午8:53:49
	 */
	public int getMaxVersionByKey(@Param("ruleModelKey") String ruleModelKey);

	/**
	* 描述：修改状态
	* @Title: updateStatus
	* @param ruleModelDeploy
	* @return
	* @author weiyongpeng
	* @date  2024年7月16日 上午10:36:14
	 */
	public int updateStatus(RuleModelDeploy ruleModelDeploy);

	/**
	* 描述：删除规则模型
	* @Title: delete
	* @param id
	* @return
	* @author weiyongpeng
	* @date  2024年7月16日 下午6:53:24
	 */
	public int delete(@Param("id") String id);

	/**
	* 描述：根据参数查询规则列表
	* @Title: findRuleModelByParams
	* @param params
	* @return
	* @author weiyongpeng
	* @date  2024年7月19日 上午8:55:31
	 */
	public List<RuleModelDeploy> findRuleModelByParams(Map<String, Object> params);

	/**
	* 描述：根据规则模型id查询规则调用所需要的数据
	* @Title: findRuleExecInfoById
	* @param id
	* @return
	* @author weiyongpeng
	* @date  2024年7月20日 上午11:46:19
	 */
	public List<Map<String, Object>> findRuleExecInfoById(@Param("ruleModelId") String id);

	/**
	* 描述：查询规则列表内部调用
	* @Title: findRuleModelInner
	* @param params
	* @return
	* @author weiyongpeng
	* @date  2024年7月28日 上午11:33:02
	 */
	public List<RuleModelDeploy> findRuleModelInner(Map<String, Object> params);
}
